﻿Imports DTO
Imports BUS
Public Class UserControlCapNhatSoTietKiem
    Dim khDTO As New KhachHangDTO()
    Dim stkDTO As New SoTietKiemDTO()

    Private Sub btnChon_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnChon.Click
        Dim maso As Integer
        If Integer.TryParse(txtMaSo.Text, maso) = False Or maso <= 0 Then
            MessageBox.Show("Mã sổ không hợp lệ!")
            txtMaSo.Focus()
            Return
        End If
        stkDTO.MaSo = maso
        txtCMND.Enabled = True
        txtDiaChi.Enabled = True
        txtKhachHang.Enabled = True
        txtMaSo.Enabled = True
        txtSoTienGui.Enabled = True
        dtpNgayMoSo.Enabled = True
        cbbLoaiTietKiem.Enabled = True
        btnCapNhat.Enabled = True

        Dim dt As New DataTable()
        Dim stkBUS As New SoTietKiemBUS()
        dt = stkBUS.LayThongTinSoTietKiem(maso)
        If dt.Rows.Count <= 0 Then
            MessageBox.Show("Mã sổ không tồn tại, vui lòng nhập lại!")
            txtMaSo.Focus()
            txtCMND.Enabled = False
            txtDiaChi.Enabled = False
            txtKhachHang.Enabled = False
            txtSoTienGui.Enabled = False
            dtpNgayMoSo.Enabled = False
            cbbLoaiTietKiem.Enabled = False
            btnCapNhat.Enabled = False
            Return
        End If
        cbbLoaiTietKiem.Text = dt.Rows(0)("TenLoaiTietKiem")
        txtDiaChi.Text = dt.Rows(0)("DiaChi")
        txtCMND.Text = dt.Rows(0)("CMND")
        txtKhachHang.Text = dt.Rows(0)("TenKhachHang")
        txtSoTienGui.Text = dt.Rows(0)("SoTienGoi").ToString()
        dtpNgayMoSo.Value = dt.Rows(0)("NgayMoSo")
    End Sub

    Private Sub UserControlCapNhatSoTietKiem_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim ltkDto As New List(Of LoaiTietKiemDTO)()
        ltkDto = LoaiTietKiemBUS.LayLoaiTietKiem()
        cbbLoaiTietKiem.DataSource = ltkDto
        cbbLoaiTietKiem.ValueMember = "MaLoaiTietKiem"
        cbbLoaiTietKiem.DisplayMember = "TenLoaiTietKiem"

    End Sub
    Private Function KiemTraCMND(ByVal CMND As String) As Boolean
        If CMND.Length <> 12 Then
            Return False
        End If
        If CMND(3) <> "-" And CMND(8) <> "-" Then
            Return False
        End If
        For i As Integer = 0 To CMND.Length
            If i <> 3 Or i <> 8 Then
                If Char.IsDigit(CMND(i)) = False Then
                    Return False
                End If
            End If
        Next
        Return True
    End Function
    Private Sub btnCapNhat_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCapNhat.Click
        If txtKhachHang.Text.Length <= 0 Then
            MessageBox.Show("Bạn chưa nhập tên khách hàng!")
            txtKhachHang.Focus()
            Return
        End If
        If txtCMND.Text.Length <> 12 Then
            MessageBox.Show("Chưa nhập CMND ")
            txtCMND.Focus()
            Return
        End If

        If txtDiaChi.Text.Length <= 0 Then
            MessageBox.Show("Bạn chưa nhập địa chỉ khách hàng!")
            txtDiaChi.Focus()
            Return
        End If
        Dim sotiengoi As Double
        If Double.TryParse(txtSoTienGui.Text, sotiengoi) = False Or sotiengoi < 0 Then
            MessageBox.Show("Số tiền gửi không hợp lệ!")
            txtSoTienGui.Focus()
            Return
        End If
        If cbbLoaiTietKiem.SelectedValue = 0 Then
            MessageBox.Show("Ban chưa chọn loại tiết kiệm")
        End If
        Dim khBUS As New KhachHangBUS()
        Dim stkBUS As New SoTietKiemBUS()
        ''

        khDTO = khBUS.LayKhachHangTheoMaSo(stkDTO.MaSo)
        khDTO.TenKH = txtKhachHang.Text
        khDTO.CMND = txtCMND.Text
        khDTO.DiaChi = txtDiaChi.Text

        Dim kq As Integer = khBUS.CapNhatKhachHang(khDTO)
        If kq = 0 Then
            MessageBox.Show("Cập nhật thất bại!")
            Return
        End If

        ''

        stkDTO.MaLoaiTietKiem = cbbLoaiTietKiem.SelectedValue
        stkDTO.MaKH = khDTO.MaKH
        stkDTO.NgayMoSo = dtpNgayMoSo.Value
        stkDTO.SoTienGoi = sotiengoi
        stkDTO.SoDu = sotiengoi

        kq = stkBUS.CapNhatSoTietKiem(stkDTO)
        If kq = 0 Then
            MessageBox.Show("Cập nhật thất bại!")
            Return
        Else
            MessageBox.Show("Cập nhật thành công")
        End If
    End Sub
End Class
